package cn.yitun.chat.yitunservermanagecore.general.bridge.auth.manager;

import cn.yitun.chat.yitunservercommonlib.dataentity.dto.system.user.UserDto;

import java.util.List;

/**
 * date 2018-06-13 10:41:23<br>
 * description
 * 
 * @author yitun<br>
 * @since
 */

public interface AuthManager {

	String createToken(UserDto user);

	void putToken(String token, Long userId);

	boolean isAuth(String token);

	List<String> getToken(Long userId);

	Long getUserId(String token);

	void removeByUserId(Long userId);

	Long removeByToken(String token);


	void putAuth(String token, Long userId);

    void clearTimeOut(long times);

    //------------------------ xx:xx:xx权限形式 start -------------------------

    /**
     * 检查用户权限 xx:xx:xx形式
     */
    boolean hasPerms(String token, String perms);

    /**
     * 添加用户权限 xx:xx:xx形式
     */
    void setPerms(String token, List<String> permsList);
    //------------------------ xx:xx:xx权限形式 end -------------------------

}
